Field of the Invention
The invention relates to a decoding circuit, and in particular, an error checking and correcting (ECC) decoder.
Description of Related Art
In the process of data transmission and/or data storage, data reliability is an important issue. For example, with characteristics including data non-volatility, energy saving, small size, etc., the non-volatile memory is applicable to various electronic devices. Generally, data to be written to the non-volatile memory are encoded through an ECC encoder (ECC encoding circuit) to generate a corresponding ECC code. Then, a codeword including the data and the ECC code is stored in the non-volatile memory. Conversely, an ECC decoder obtains the codeword (encoded data) from the non-volatile memory and then performs an ECC decoding procedure to decode the codeword into decoded data. In other words, the ECC decoder can correct error bits in the read data by using the corresponding ECC code.
The ECC decoding procedure applied to the non-volatile memory (e.g., a flash memory) is, for example, a Bose-Chaudhuri-Hocquenghem (BCH) decoding procedure. However, as the memory capacity increases, the time taken for performing a BCH decoding also increases. Accordingly, how to reduce the time taken for the BCH decoding (enhancing a decoding efficiency) and how to lower power consumption of the BCH decoding are issues that concern people skilled in the art.